This invention relates to a servomotor drive control system for performing high-speed and high-accuracy synchronous operation between drive control units by optimized communications and inputting sensor information and performing high-response and high-accuracy machine control.
FIG. 14 is a block diagram of a numerical control system in a related art, a kind of servomotor drive control system, for controlling drive control units by a numerical control unit of a command unit. Assuming that the numerical control unit is an upward unit and the drive control units are downward units, numerical control unit 10 and drive control units 12 and 13 are connected by a pair of communication lines made up of a downward communication line 1 and an upward communication line 2. An acceleration sensor 112 and limit switches 113 and 114 are attached to a controlled machine, and machine information of error information, sequence information, etc., is sent to the numerical control unit 10. The numerical control system configured as shown in FIG. 14 synchronously operates the two drive control units 12 and 13 by one numerical control unit 10 and acquires machine information by a sensor and performs sequence control and emergency control. Data transmitted from a transmission section 20 of the numerical control unit 10 is communicated over the downward communication line 1 and is received at reception sections 22 and 23 of the drive control units 12 and 13. Over the downward communication line 1, control commands of position, speed, electric current, etc., servo parameters required for the drive control units to perform control, and warning and alarm signals given to the drive control units are communicated from the numerical control unit 10 to the drive control units 12 and 13. Data transmitted from transmission sections 42 and 43 of the drive control units 12 and 13 is communicated over the upward communication line 2 and is received at a reception section 40 of the numerical control unit 10. Over the upward communication line 2, detection data of the drive control units such as position, speed, and electric current, the current state of each of the drive control units, and data of warning and alarm signals, etc., are communicated from the drive control units 12 and 13 to the numerical control unit 10. The transmission data from the numerical control unit 10 is transmitted in synchronization with the control period of the numerical control unit 10. The transmission timing of data from each of the drive control units 12 and 13 is kept in synchronization based on the data from the numerical control unit 10 and is scheduled based thereon, an example of which is shown in FIG. 15. In FIG. 15, numeral 1000 denotes communication period of the numerical control unit 10, numeral 1001 denotes data transmitted from the numerical control unit 10, and numeral 1003 denotes data transmitted from the drive control units 12 and 13.
The drive control unit 12 inputs a control command from the numerical control unit 10, detection data of an encoder 101 attached to a motor shaft end, and detection data of a scale encoder 110 attached to the machine and performs servo control of a servomotor 100. The drive control unit 13 inputs a control command from the numerical control unit 10, detection data of an encoder 104 attached to a motor shaft end, and detection data of a scale encoder 111 attached to the machine and performs servo control of a servomotor 103. As the numerical control unit 10 synchronously operates the drive control units 12 and 13, the servomotors 100 and 103 drive ball screws 102 and 105 for moving a table 106 on which a workpiece 107 is placed, on the ball screws 102 and 105.
After detecting data of the acceleration sensor 112, the numerical control unit 10 transmits data to the downward communication line 1 and gives commands of position, speed, electric current, etc., to the drive control units 12 and 13 so as to prevent the machine from producing machine vibration and reduce overshoot at the machine position for improving the positioning accuracy.
When detecting some anomaly occurring in the system, the table 106 exceeding the moving range, and the limit switch 113, 114 being turned on, immediately the numerical control unit 10 transmits emergency stop information to the drive control units 12 and 13 via the downward communication line 1 for stopping the drive control units 12 and 13 of the servomotors 102 and 103.
By the way, to synchronously operate two axes or more in the numerical control system, if the numerical control unit 10 gives a control command to each of the drive control units 12 and 13 in an open loop, when a disturbance is applied to one axis in synchronous operation, a large synchronization error appears. Thus, the numerical control unit 10 in the related art calculates a command in synchronization based on the detection data of position, speed, electric current, etc., transmitted from the drive control units 12 and 13 and then transmits the command to the drive control units 12 and 13, as described above.
However, if the numerical control unit 10 itself thus generates an error correction command, the preparation of the error correction command imposes a calculation load on the numerical control unit 10 and further the prepared command is a command delayed by one control period and for a disturbance like an impulse, a large synchronization error appears as a command is given in an open loop.
Thus, to prevent a disturbance like an impulse from causing a synchronization error to occur, as shown in FIG. 16, the drive control unit 12 is provided with a reception section 51 connected to the upward communication line 2 and receives at the reception section 51 the detection data of position, speed, electric current, etc., of the drive control unit 13 transmitted in accordance with the control period of the numerical control unit 10 and compares the received detection data with the detection data of the drive control unit 12, thereby correcting the synchronization error before the next control period of the numerical control unit 10. The system shown in FIG. 16 is disclosed in JP-A-9-34520.
However, if the drive control unit 12 corrects the synchronization error as described above, the data of the drive control units 12 and 13 is transmitted in accordance with the control period of the numerical control unit 10 and therefore the period in which the drive control unit 12 can correct the synchronization error depends on the control period of the numerical control unit 10 and thus there is a limit to correcting of the synchronization error with good accuracy by the drive control unit 12. To improve the control performance of the drive control unit, it is possible to shorten the control period of the numerical control unit; however, to provide the numerical control unit with high performance, complicated coordinate computation and control processing need to be performed for a larger number of control axes and it is not easy to shorten the control period.
For the drive control unit to perform control based on a plurality of pieces of sensor information, the drive control unit requires a large number of connectors, etc., for receiving detection data, but it is substantially impossible to provide the drive control unit with connectors, etc., for receiving detection data corresponding to sensors. Therefore, the numerical control unit 10 in place of the drive control unit inputs the detection data of the acceleration sensor 112 and generates a command. Thus, the command is delayed by one control period as in the synchronous operation described above and if machine information is acquired by the sensor, the control performance is not much improved and there is a problem of increasing the calculation load on the numerical control unit 10.
To conduct emergency stop of the system by the limit switch 113, 114 for safety, the information of the limit switch 113, 114 is once processed by the numerical control unit 10 and is transmitted as data. Thus, the idle time is large and the coasting distance after the emergency stop is extended.
The invention is intended for solving the problems described above and it is an object of the invention to provide a servomotor drive control system that can correct a synchronization error accurately if the synchronization error is corrected in drive control units.
It is another object of the invention to provide a servomotor drive control system for making it possible to decrease calculation loads on a command unit of a numerical control unit, etc., and drive control units, moreover for drive control units having the same control performance, to increase the number of axes to which synchronization error correction can be made using one type of drive control unit, and by extension to easily make the system highly accurate.
It is another object of the invention to provide a servomotor drive control system for making it possible to decrease calculation loads on a command unit of a numerical control unit, etc., and drive control units and moreover to perform high-speed and high-accuracy synchronous operation.
It is still another object of the invention to provide a servomotor drive control system for making it possible for drive control units to detect a plurality of pieces of sensor information without increasing the number of connectors for detector data reception and not via a command unit of a numerical control unit, etc., and by extension to make the system a high-speed and high-accuracy system.
To the ends, according to the invention, in a servomotor drive control system comprising a command unit of a numerical control unit, etc., a plurality of drive control units for controlling drive of servomotors, a first communication line for transmitting data of a control command, etc., in a direction of the above-mentioned plurality of drive control units from the above-mentioned command unit, and a second communication line for transmitting data of detection data, etc., in a direction of the above-mentioned command unit from the above-mentioned plurality of drive control units, wherein data is transferred between the above-mentioned plurality of drive control units using the above-mentioned communication lines, whereby the above-mentioned servomotors are synchronously controlled, the communication period between the above-mentioned drive control units is set to one-nth of the communication period of the above-mentioned command unit (n is an integer).
According to the invention, in a servomotor drive control system comprising a command unit of a numerical control unit, etc., a plurality of drive control units for controlling drive of servomotors, a first communication line for transmitting data of a control command, etc., in a direction of the above-mentioned plurality of drive control units from the above-mentioned command unit, and a second communication line for transmitting data of detection data, etc., in a direction of the above-mentioned command unit from the above-mentioned plurality of drive control units, wherein the above-mentioned plurality of drive control units synchronously control the servomotors, a motion control unit is placed between the above-mentioned command unit and the above-mentioned plurality of drive control units for receiving the control command given to the above-mentioned plurality of drive control units, transmitted through the above-mentioned first communication line from the above-mentioned command unit, receiving the detection data transmitted through the above-mentioned second communication line from the above-mentioned plurality of drive control units, generating a synchronization error correction control command based on the received control command and detection data mentioned above, and transmitting the generated synchronization error correction control command to the above-mentioned drive control units through the above-mentioned first communication line, and the above-mentioned drive control units receive the control command from the above-mentioned command unit and the synchronization error correction control command from the above-mentioned motion control unit, transmitted through the above-mentioned first communication line and control the servomotors based on the received control command and synchronization error correction control command.
In the invention, in the above-mentioned servomotor drive control system, the communication period between the above-mentioned motion control unit and the above-mentioned drive control units is set to one-nth of the communication period of the above-mentioned command unit (n is an integer).
According to the invention, in a servomotor drive control system comprising a command unit of a numerical control unit, etc., a plurality of drive control units for controlling drive of a servomotor, a first communication line for transmitting data of a control command, etc., in a direction of the above-mentioned plurality of drive control units from the above-mentioned command unit, and a second communication line for transmitting data of detection data, etc., in a direction of the above-mentioned command unit from the above-mentioned plurality of drive control units, a sensor control unit is provided for inputting detection data of a sensor and transmitting the data directly to the above-mentioned plurality of drive control units through the above-mentioned first or second communication line, and the above-mentioned plurality of drive control units receives the control command from the above-mentioned command unit transmitted through the above-mentioned first communication line and the detection data of the sensor transmitted through the above-mentioned first or second communication line, and controls the servomotor based on the received control command and detection data of the sensor.
In the invention, in the above-mentioned servomotor drive control system, the communication period between the above-mentioned drive control unit and the above-mentioned sensor control unit is set to one-nth of the communication period of the above-mentioned command unit (n is an integer).
According to the invention, in a servomotor drive control system comprising a command unit of a numerical control unit, etc., a plurality of drive control units for controlling drive of servomotors, a first communication line for transmitting data of a control command, etc., in a direction of the above-mentioned plurality of drive control units from the above-mentioned command unit, and a second communication line for transmitting data of detection data, etc., in a direction of the above-mentioned command unit from the above-mentioned plurality of drive control units, wherein the above-mentioned plurality of drive control units synchronously control the servomotors, a sensor control unit is provided for inputting detection data of a sensor and transmitting the data directly to the above-mentioned drive control units through the above-mentioned first or second communication line, a motion control unit is placed between the above-mentioned command unit and the above-mentioned plurality of drive control units for receiving the control command given to the above-mentioned plurality of drive control units, transmitted through the above-mentioned first communication line from the above-mentioned command unit, receiving the detection data transmitted through the above-mentioned second communication line from the above-mentioned plurality of drive control units, generating a synchronization error correction control command based on the received control command and detection data mentioned above, and transmitting the generated synchronization error correction control command to the above-mentioned drive control units through the above-mentioned first communication line, and the above-mentioned drive control units receive the control command from the above-mentioned command unit transmitted through the above-mentioned first communication line, the synchronization error correction control command from the above-mentioned motion control unit transmitted through the above-mentioned first communication line, and the detection data of the sensor transmitted through the above-mentioned first or second communication line, and control the servomotors based on the received control command, synchronization error correction control command, and detection data of the sensor.
In the invention, in the above-mentioned servomotor drive control system, the communication period between the above-mentioned motion control unit, the above-mentioned drive control units, and the above-mentioned sensor control unit is set to one-nth of the communication period of the above-mentioned command unit (n is an integer).
According to the invention, in a servomotor drive control system comprising a command unit of a numerical control unit, etc., a plurality of drive control units for controlling drive of servomotors, a first communication line for transmitting data of a control command, etc., in a direction of the above-mentioned plurality of drive control units from the above-mentioned command unit, and a second communication line for transmitting data of detection data, etc., in a direction of the above-mentioned command unit from the above-mentioned plurality of drive control units, wherein the above-mentioned plurality of drive control units synchronously control the servomotors, a motion control unit is placed between the above-mentioned command unit and the above-mentioned plurality of drive control units, the above-mentioned first and second communication lines can be disconnected in the above-mentioned motion control unit, with the above-mentioned first and second communication lines disconnected in the above-mentioned motion control unit, the above-mentioned motion control unit receives the control command for a plurality of periods given to the above-mentioned plurality of drive control units, transmitted through the above-mentioned first communication line from the above-mentioned command unit in the communication period defined by the above-mentioned command unit, divides the received control command into a plurality of pieces, transmits the provided control command pieces to the above-mentioned plurality of drive control units through the above-mentioned first communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit, receives the detection data transmitted through the above-mentioned second communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit from the above-mentioned plurality of drive control units, generates a synchronization error correction control command based on the received detection data and the received control command from the above-mentioned command unit, transmits the synchronization error correction control command to the above-mentioned drive control units through the above-mentioned first communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit, and transmits the received data of the detection data, etc., transmitted from the above-mentioned plurality of drive control units to the above-mentioned command unit through the above-mentioned second communication line in the communication period defined by the above-mentioned command unit, and the above-mentioned drive control units receive the control command and the synchronization error correction control command transmitted through the above-mentioned first communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit and control the servomotors based on the received control command and synchronization error correction control command.
Further, according to the invention, in a servomotor drive control system comprising a command unit of a numerical control unit, etc., a plurality of drive control units for controlling drive of servomotors, a first communication line for transmitting data of a control command, etc., in a direction of the above-mentioned plurality of drive control units from the above-mentioned command unit, and a second communication line for transmitting data of detection data, etc., in a direction of the above-mentioned command unit from the above-mentioned plurality of drive control units, wherein the above-mentioned plurality of drive control units synchronously control the servomotors, a motion control unit is placed between the above-mentioned command unit and the above-mentioned plurality of drive control units, a sensor control unit is provided for inputting detection data of a sensor and transmitting the data directly to the above-mentioned drive control unit through the above-mentioned first or second communication line, the above-mentioned first and second communication lines can be disconnected in the above-mentioned motion control unit, with the above-mentioned first and second communication lines disconnected in the above-mentioned motion control unit, the above-mentioned motion control unit receives the control command for a plurality of periods given to the above-mentioned plurality of drive control units, transmitted through the above-mentioned first communication line from the above-mentioned command unit in the communication period defined by the above-mentioned command unit, divides the received control command into a plurality of pieces, transmits the provided control command pieces to the above-mentioned plurality of drive control units through the above-mentioned first communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit, receives the detection data transmitted through the above-mentioned second communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit from the above-mentioned plurality of drive control units, generates a synchronization error correction control command based on the received detection data and the received control command from the above-mentioned command unit, transmits the synchronization error correction control command to the above-mentioned drive control units through the above-mentioned first communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit, and transmits the received data of the detection data, etc., transmitted from the above-mentioned plurality of drive control units to the above-mentioned command unit through the above-mentioned second communication line in the communication period defined by the above-mentioned command unit, and the above-mentioned plurality of drive control units receive the control command and the synchronization error correction control command transmitted through the above-mentioned first communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit, receives the detection data of the sensor transmitted through the above-mentioned first or second communication line in one-nth (n is an integer) of the communication period defined by the above-mentioned command unit, and control the servomotors based on the received control command, synchronization error correction control command, and detection data of the sensor.